今天是iOS年度盛事iPlayground 的第一天,聽了一整天前輩們的分享,還是要把今天的挑戰完成
最後這裡要談的是如何Debug,
當我們利用SceneKit 創造了虛擬場景,然後利用AR Session 連接虛擬場景與真實世界, 然後我們透過螢幕看到的就已經是虛擬物件在真實世界,但沒有座標軸,沒有物件原本的草圖, 更沒有虛擬物件的邊界(需要這個,因為這樣才能知道虛擬物件與真實世界的接觸點, 在碰撞等物理事件上很關鍵), 和相機偵測點
為ARSCNView 加上debugOpiton (即ARSCNDebugOptions 或說是 SCNDebugOptions)
@IBOutlet var sceneView: ARSCNView!
func initSceneView() {
sceneView.delegate = self
sceneView.showsStatistics = true
sceneView.debugOptions = [
SCNDebugOptions.showFeaturePoints,
SCNDebugOptions.showWorldOrigin,
SCNDebugOptions.showBoundingBoxes,
SCNDebugOptions.showWireframe
]
}
1.showFeaturePoints: 顯示相機偵測到的真實世界參考點(就是利用這些參考點, 當裝置移動時可以知道其位置)
2.showWorldOrigin: 顯示虛擬物件的X-Y-Z 的正向軸
3.showBoundingBoxes: 顯示虛擬物件的邊界
4.showWireframe: 顯示虛擬物件的Wireframe